// src/main/java/com/example/daibanshiwu/Service/PersonalCenterService.java

package com.example.daibanshiwu.Service;

import com.example.daibanshiwu.pojo.PasswordChangeDTO;
import com.example.daibanshiwu.pojo.TUser;

import java.util.List;

/**
 * 个人中心业务逻辑接口
 */
public interface PersonalCenterService {

    /**
     * 根据用户ID获取用户的详细信息。
     *
     * @param userId 用户ID
     * @return TUser 用户对象，如果找不到则返回null
     */
//    List<TUser> getUserInfo(Integer userId);

    /**
     * 更新用户的基本资料（姓名、部门、邮箱、电话）。
     *
     * @param user 包含需要更新信息的用户对象
     */
    void updateUserProfile(TUser user);

    /**
     * 修改用户密码。
     * 业务逻辑：需要先验证当前密码是否正确，然后再设置新密码。
     *
     * @param userId       要修改密码的用户ID
     * @param passwordData 包含当前密码和新密码的数据传输对象
     * @throws RuntimeException 如果当前密码不正确，则抛出异常
     */
    void changeUserPassword(TUser user);
}
